在講這篇的主題前,先來稍微說說為什麼 Python 會在 2018 年開始起飛成為第二熱門語言的(忘記的回去看 Day 01 )。
其實 Python 會起飛的原因主要是 AI 開始熱門起來,因為相較於其他有名的程式語言,例如較古老的 C(1992~Now) 跟較年輕的 Java(1995~Now) , Python(1991~Now) 有個方便的軟體包管理系統 — PIP(2011~Now) ,讓我們可以使用其他人做好的軟體包快速的架構出自己的應用,也可以將自己做好的軟體包發布出去供其他人使用;加上語法相對簡單,所以導致了在 AI 應用上更加偏好使用 Python 。
而 PIP 跟 import 關係非常密切,所以就放在一起講了。
那麼好用的 PIP 要怎麼安裝呢?嗯,其實不用安裝( Python 3.4 以上都能正常使用),因為 Day 02 在安裝 Python 的時候已經包在裡面一起安裝好了(至少 Windows 是這樣)。
既然不用擔心怎麼安裝,那就直接來看怎麼使用吧!首先打開 CMD,會出現下圖(位置不一樣沒關係),並打上 pip --version
後按下 Enter
。
應該會看到版號 21.1.1
(版號不一樣沒關係,有就好)。
確定PIP有安裝好了之後,如果要安裝其他模組,只要輸入以下指令 pip install <name>
,就可以安裝模組了。例如:
$ pip install beautifulsoup4
如果要解除安裝也可以,只要輸入 pip uninstall <name>
就可以了。例如:
$ pip uninstall beautifulsoup4
使用PIP安裝好模組之後,就可以使用該模組了。而將模組導入使用的方法是把模組 import 進來,
import 進來的語法有兩種,分別為:
import <module>
''' Input '''
import random
# 使用 random 模組裡面的 randint 函式 (random 是Python標準庫 不用特別安裝)
print(random.randint(0,10))
''' Output '''
2
語法1 因為式將整個模組 import 進來,所以在呼叫 Module(模組) 裡的 Function(函式) 時必須將所屬的 Module(模組) 加在前方,並且中間加 .
(是英文句號,不是逗號)。
from <module> import <name1, name2, ...>
''' Input '''
# 導入 random 模組裡面的 randint 函式
from random import randint
print(randint(0,10))
''' Output '''
2
語法2 因為直接將 Function(函式) 導入,所以不需要將所屬的 Module(模組) 加在前方了。不過若是想要使用 Module(模組) 下的另一個 Function(函式),就必須在 import 後方再加另一個 Function(函式) 的名稱了。
- 語法2 的變形(不推薦)from <module> import *
用這種方式可以 import module 裡面所有的 function,而且也不用再使用時前面加 module 名稱。但是可能會造成名稱衝突且降低可讀性和可維護性(就是說可能會產生隱藏的 Bug ,而且是最難解、幾乎看不出來的那種)。
* 如果 import Function 的名稱會跟現在的地方有衝突,可以使用 as <new_name> 來改名,例如:
import random as rd
# or
from random import randint as rd_int
這樣用 as 改名就可以避免名字跟現在的地方有衝突(雖然 as 的用途包括但不僅限於用在 import 上面)。
在 PEP8 中有對於導入模組的順序有相關的建議,不過其實不太會有人花很多的精力去看 import 這部分,所以要不要照著建議就自己衡量一下吧。
Imports are always put at the top of the file, just after any module comments and docstrings, and before module globals and constants.
Imports should be grouped in the following order:
- Standard library imports.
- Related third party imports.
- Local application/library specific imports.
You should put a blank line between each group of imports.
導入總是放在文件的頂部,就在任何模塊註釋和文檔字符串之後,以及模塊全局變量和常量之前。
進口應按以下順序分組:
- 標準庫導入。
- 相關的第三方進口。
- 本地應用程序/庫特定的導入。
您應該在每組導入之間放置一個空行。
那麼就大概這樣,這篇主要是讓你了解如何 import 而已。
大家掰~掰~